package com.dupf.product.dao.model;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

public class ProductDetailExample implements Serializable {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private static final long serialVersionUID = 1L;

    public ProductDetailExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria implements Serializable {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andProductIdIsNull() {
            addCriterion("product_id is null");
            return (Criteria) this;
        }

        public Criteria andProductIdIsNotNull() {
            addCriterion("product_id is not null");
            return (Criteria) this;
        }

        public Criteria andProductIdEqualTo(Integer value) {
            addCriterion("product_id =", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdNotEqualTo(Integer value) {
            addCriterion("product_id <>", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdGreaterThan(Integer value) {
            addCriterion("product_id >", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("product_id >=", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdLessThan(Integer value) {
            addCriterion("product_id <", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdLessThanOrEqualTo(Integer value) {
            addCriterion("product_id <=", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdIn(List<Integer> values) {
            addCriterion("product_id in", values, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdNotIn(List<Integer> values) {
            addCriterion("product_id not in", values, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdBetween(Integer value1, Integer value2) {
            addCriterion("product_id between", value1, value2, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdNotBetween(Integer value1, Integer value2) {
            addCriterion("product_id not between", value1, value2, "productId");
            return (Criteria) this;
        }

        public Criteria andStockIsNull() {
            addCriterion("stock is null");
            return (Criteria) this;
        }

        public Criteria andStockIsNotNull() {
            addCriterion("stock is not null");
            return (Criteria) this;
        }

        public Criteria andStockEqualTo(Integer value) {
            addCriterion("stock =", value, "stock");
            return (Criteria) this;
        }

        public Criteria andStockNotEqualTo(Integer value) {
            addCriterion("stock <>", value, "stock");
            return (Criteria) this;
        }

        public Criteria andStockGreaterThan(Integer value) {
            addCriterion("stock >", value, "stock");
            return (Criteria) this;
        }

        public Criteria andStockGreaterThanOrEqualTo(Integer value) {
            addCriterion("stock >=", value, "stock");
            return (Criteria) this;
        }

        public Criteria andStockLessThan(Integer value) {
            addCriterion("stock <", value, "stock");
            return (Criteria) this;
        }

        public Criteria andStockLessThanOrEqualTo(Integer value) {
            addCriterion("stock <=", value, "stock");
            return (Criteria) this;
        }

        public Criteria andStockIn(List<Integer> values) {
            addCriterion("stock in", values, "stock");
            return (Criteria) this;
        }

        public Criteria andStockNotIn(List<Integer> values) {
            addCriterion("stock not in", values, "stock");
            return (Criteria) this;
        }

        public Criteria andStockBetween(Integer value1, Integer value2) {
            addCriterion("stock between", value1, value2, "stock");
            return (Criteria) this;
        }

        public Criteria andStockNotBetween(Integer value1, Integer value2) {
            addCriterion("stock not between", value1, value2, "stock");
            return (Criteria) this;
        }

        public Criteria andProductWeightIsNull() {
            addCriterion("product_weight is null");
            return (Criteria) this;
        }

        public Criteria andProductWeightIsNotNull() {
            addCriterion("product_weight is not null");
            return (Criteria) this;
        }

        public Criteria andProductWeightEqualTo(Integer value) {
            addCriterion("product_weight =", value, "productWeight");
            return (Criteria) this;
        }

        public Criteria andProductWeightNotEqualTo(Integer value) {
            addCriterion("product_weight <>", value, "productWeight");
            return (Criteria) this;
        }

        public Criteria andProductWeightGreaterThan(Integer value) {
            addCriterion("product_weight >", value, "productWeight");
            return (Criteria) this;
        }

        public Criteria andProductWeightGreaterThanOrEqualTo(Integer value) {
            addCriterion("product_weight >=", value, "productWeight");
            return (Criteria) this;
        }

        public Criteria andProductWeightLessThan(Integer value) {
            addCriterion("product_weight <", value, "productWeight");
            return (Criteria) this;
        }

        public Criteria andProductWeightLessThanOrEqualTo(Integer value) {
            addCriterion("product_weight <=", value, "productWeight");
            return (Criteria) this;
        }

        public Criteria andProductWeightIn(List<Integer> values) {
            addCriterion("product_weight in", values, "productWeight");
            return (Criteria) this;
        }

        public Criteria andProductWeightNotIn(List<Integer> values) {
            addCriterion("product_weight not in", values, "productWeight");
            return (Criteria) this;
        }

        public Criteria andProductWeightBetween(Integer value1, Integer value2) {
            addCriterion("product_weight between", value1, value2, "productWeight");
            return (Criteria) this;
        }

        public Criteria andProductWeightNotBetween(Integer value1, Integer value2) {
            addCriterion("product_weight not between", value1, value2, "productWeight");
            return (Criteria) this;
        }

        public Criteria andPackageWeightIsNull() {
            addCriterion("package_weight is null");
            return (Criteria) this;
        }

        public Criteria andPackageWeightIsNotNull() {
            addCriterion("package_weight is not null");
            return (Criteria) this;
        }

        public Criteria andPackageWeightEqualTo(Integer value) {
            addCriterion("package_weight =", value, "packageWeight");
            return (Criteria) this;
        }

        public Criteria andPackageWeightNotEqualTo(Integer value) {
            addCriterion("package_weight <>", value, "packageWeight");
            return (Criteria) this;
        }

        public Criteria andPackageWeightGreaterThan(Integer value) {
            addCriterion("package_weight >", value, "packageWeight");
            return (Criteria) this;
        }

        public Criteria andPackageWeightGreaterThanOrEqualTo(Integer value) {
            addCriterion("package_weight >=", value, "packageWeight");
            return (Criteria) this;
        }

        public Criteria andPackageWeightLessThan(Integer value) {
            addCriterion("package_weight <", value, "packageWeight");
            return (Criteria) this;
        }

        public Criteria andPackageWeightLessThanOrEqualTo(Integer value) {
            addCriterion("package_weight <=", value, "packageWeight");
            return (Criteria) this;
        }

        public Criteria andPackageWeightIn(List<Integer> values) {
            addCriterion("package_weight in", values, "packageWeight");
            return (Criteria) this;
        }

        public Criteria andPackageWeightNotIn(List<Integer> values) {
            addCriterion("package_weight not in", values, "packageWeight");
            return (Criteria) this;
        }

        public Criteria andPackageWeightBetween(Integer value1, Integer value2) {
            addCriterion("package_weight between", value1, value2, "packageWeight");
            return (Criteria) this;
        }

        public Criteria andPackageWeightNotBetween(Integer value1, Integer value2) {
            addCriterion("package_weight not between", value1, value2, "packageWeight");
            return (Criteria) this;
        }

        public Criteria andFreeShippingIsNull() {
            addCriterion("free_shipping is null");
            return (Criteria) this;
        }

        public Criteria andFreeShippingIsNotNull() {
            addCriterion("free_shipping is not null");
            return (Criteria) this;
        }

        public Criteria andFreeShippingEqualTo(Byte value) {
            addCriterion("free_shipping =", value, "freeShipping");
            return (Criteria) this;
        }

        public Criteria andFreeShippingNotEqualTo(Byte value) {
            addCriterion("free_shipping <>", value, "freeShipping");
            return (Criteria) this;
        }

        public Criteria andFreeShippingGreaterThan(Byte value) {
            addCriterion("free_shipping >", value, "freeShipping");
            return (Criteria) this;
        }

        public Criteria andFreeShippingGreaterThanOrEqualTo(Byte value) {
            addCriterion("free_shipping >=", value, "freeShipping");
            return (Criteria) this;
        }

        public Criteria andFreeShippingLessThan(Byte value) {
            addCriterion("free_shipping <", value, "freeShipping");
            return (Criteria) this;
        }

        public Criteria andFreeShippingLessThanOrEqualTo(Byte value) {
            addCriterion("free_shipping <=", value, "freeShipping");
            return (Criteria) this;
        }

        public Criteria andFreeShippingIn(List<Byte> values) {
            addCriterion("free_shipping in", values, "freeShipping");
            return (Criteria) this;
        }

        public Criteria andFreeShippingNotIn(List<Byte> values) {
            addCriterion("free_shipping not in", values, "freeShipping");
            return (Criteria) this;
        }

        public Criteria andFreeShippingBetween(Byte value1, Byte value2) {
            addCriterion("free_shipping between", value1, value2, "freeShipping");
            return (Criteria) this;
        }

        public Criteria andFreeShippingNotBetween(Byte value1, Byte value2) {
            addCriterion("free_shipping not between", value1, value2, "freeShipping");
            return (Criteria) this;
        }

        public Criteria andDelivery24IsNull() {
            addCriterion("delivery24 is null");
            return (Criteria) this;
        }

        public Criteria andDelivery24IsNotNull() {
            addCriterion("delivery24 is not null");
            return (Criteria) this;
        }

        public Criteria andDelivery24EqualTo(Byte value) {
            addCriterion("delivery24 =", value, "delivery24");
            return (Criteria) this;
        }

        public Criteria andDelivery24NotEqualTo(Byte value) {
            addCriterion("delivery24 <>", value, "delivery24");
            return (Criteria) this;
        }

        public Criteria andDelivery24GreaterThan(Byte value) {
            addCriterion("delivery24 >", value, "delivery24");
            return (Criteria) this;
        }

        public Criteria andDelivery24GreaterThanOrEqualTo(Byte value) {
            addCriterion("delivery24 >=", value, "delivery24");
            return (Criteria) this;
        }

        public Criteria andDelivery24LessThan(Byte value) {
            addCriterion("delivery24 <", value, "delivery24");
            return (Criteria) this;
        }

        public Criteria andDelivery24LessThanOrEqualTo(Byte value) {
            addCriterion("delivery24 <=", value, "delivery24");
            return (Criteria) this;
        }

        public Criteria andDelivery24In(List<Byte> values) {
            addCriterion("delivery24 in", values, "delivery24");
            return (Criteria) this;
        }

        public Criteria andDelivery24NotIn(List<Byte> values) {
            addCriterion("delivery24 not in", values, "delivery24");
            return (Criteria) this;
        }

        public Criteria andDelivery24Between(Byte value1, Byte value2) {
            addCriterion("delivery24 between", value1, value2, "delivery24");
            return (Criteria) this;
        }

        public Criteria andDelivery24NotBetween(Byte value1, Byte value2) {
            addCriterion("delivery24 not between", value1, value2, "delivery24");
            return (Criteria) this;
        }

        public Criteria andFbaIsNull() {
            addCriterion("fba is null");
            return (Criteria) this;
        }

        public Criteria andFbaIsNotNull() {
            addCriterion("fba is not null");
            return (Criteria) this;
        }

        public Criteria andFbaEqualTo(Byte value) {
            addCriterion("fba =", value, "fba");
            return (Criteria) this;
        }

        public Criteria andFbaNotEqualTo(Byte value) {
            addCriterion("fba <>", value, "fba");
            return (Criteria) this;
        }

        public Criteria andFbaGreaterThan(Byte value) {
            addCriterion("fba >", value, "fba");
            return (Criteria) this;
        }

        public Criteria andFbaGreaterThanOrEqualTo(Byte value) {
            addCriterion("fba >=", value, "fba");
            return (Criteria) this;
        }

        public Criteria andFbaLessThan(Byte value) {
            addCriterion("fba <", value, "fba");
            return (Criteria) this;
        }

        public Criteria andFbaLessThanOrEqualTo(Byte value) {
            addCriterion("fba <=", value, "fba");
            return (Criteria) this;
        }

        public Criteria andFbaIn(List<Byte> values) {
            addCriterion("fba in", values, "fba");
            return (Criteria) this;
        }

        public Criteria andFbaNotIn(List<Byte> values) {
            addCriterion("fba not in", values, "fba");
            return (Criteria) this;
        }

        public Criteria andFbaBetween(Byte value1, Byte value2) {
            addCriterion("fba between", value1, value2, "fba");
            return (Criteria) this;
        }

        public Criteria andFbaNotBetween(Byte value1, Byte value2) {
            addCriterion("fba not between", value1, value2, "fba");
            return (Criteria) this;
        }

        public Criteria andBrandNameIsNull() {
            addCriterion("brand_name is null");
            return (Criteria) this;
        }

        public Criteria andBrandNameIsNotNull() {
            addCriterion("brand_name is not null");
            return (Criteria) this;
        }

        public Criteria andBrandNameEqualTo(String value) {
            addCriterion("brand_name =", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotEqualTo(String value) {
            addCriterion("brand_name <>", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameGreaterThan(String value) {
            addCriterion("brand_name >", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameGreaterThanOrEqualTo(String value) {
            addCriterion("brand_name >=", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameLessThan(String value) {
            addCriterion("brand_name <", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameLessThanOrEqualTo(String value) {
            addCriterion("brand_name <=", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameLike(String value) {
            addCriterion("brand_name like", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotLike(String value) {
            addCriterion("brand_name not like", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameIn(List<String> values) {
            addCriterion("brand_name in", values, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotIn(List<String> values) {
            addCriterion("brand_name not in", values, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameBetween(String value1, String value2) {
            addCriterion("brand_name between", value1, value2, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotBetween(String value1, String value2) {
            addCriterion("brand_name not between", value1, value2, "brandName");
            return (Criteria) this;
        }

        public Criteria andManufacturerIsNull() {
            addCriterion("manufacturer is null");
            return (Criteria) this;
        }

        public Criteria andManufacturerIsNotNull() {
            addCriterion("manufacturer is not null");
            return (Criteria) this;
        }

        public Criteria andManufacturerEqualTo(String value) {
            addCriterion("manufacturer =", value, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andManufacturerNotEqualTo(String value) {
            addCriterion("manufacturer <>", value, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andManufacturerGreaterThan(String value) {
            addCriterion("manufacturer >", value, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andManufacturerGreaterThanOrEqualTo(String value) {
            addCriterion("manufacturer >=", value, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andManufacturerLessThan(String value) {
            addCriterion("manufacturer <", value, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andManufacturerLessThanOrEqualTo(String value) {
            addCriterion("manufacturer <=", value, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andManufacturerLike(String value) {
            addCriterion("manufacturer like", value, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andManufacturerNotLike(String value) {
            addCriterion("manufacturer not like", value, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andManufacturerIn(List<String> values) {
            addCriterion("manufacturer in", values, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andManufacturerNotIn(List<String> values) {
            addCriterion("manufacturer not in", values, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andManufacturerBetween(String value1, String value2) {
            addCriterion("manufacturer between", value1, value2, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andManufacturerNotBetween(String value1, String value2) {
            addCriterion("manufacturer not between", value1, value2, "manufacturer");
            return (Criteria) this;
        }

        public Criteria andProduceNoIsNull() {
            addCriterion("produce_no is null");
            return (Criteria) this;
        }

        public Criteria andProduceNoIsNotNull() {
            addCriterion("produce_no is not null");
            return (Criteria) this;
        }

        public Criteria andProduceNoEqualTo(String value) {
            addCriterion("produce_no =", value, "produceNo");
            return (Criteria) this;
        }

        public Criteria andProduceNoNotEqualTo(String value) {
            addCriterion("produce_no <>", value, "produceNo");
            return (Criteria) this;
        }

        public Criteria andProduceNoGreaterThan(String value) {
            addCriterion("produce_no >", value, "produceNo");
            return (Criteria) this;
        }

        public Criteria andProduceNoGreaterThanOrEqualTo(String value) {
            addCriterion("produce_no >=", value, "produceNo");
            return (Criteria) this;
        }

        public Criteria andProduceNoLessThan(String value) {
            addCriterion("produce_no <", value, "produceNo");
            return (Criteria) this;
        }

        public Criteria andProduceNoLessThanOrEqualTo(String value) {
            addCriterion("produce_no <=", value, "produceNo");
            return (Criteria) this;
        }

        public Criteria andProduceNoLike(String value) {
            addCriterion("produce_no like", value, "produceNo");
            return (Criteria) this;
        }

        public Criteria andProduceNoNotLike(String value) {
            addCriterion("produce_no not like", value, "produceNo");
            return (Criteria) this;
        }

        public Criteria andProduceNoIn(List<String> values) {
            addCriterion("produce_no in", values, "produceNo");
            return (Criteria) this;
        }

        public Criteria andProduceNoNotIn(List<String> values) {
            addCriterion("produce_no not in", values, "produceNo");
            return (Criteria) this;
        }

        public Criteria andProduceNoBetween(String value1, String value2) {
            addCriterion("produce_no between", value1, value2, "produceNo");
            return (Criteria) this;
        }

        public Criteria andProduceNoNotBetween(String value1, String value2) {
            addCriterion("produce_no not between", value1, value2, "produceNo");
            return (Criteria) this;
        }

        public Criteria andMarkIsNull() {
            addCriterion("mark is null");
            return (Criteria) this;
        }

        public Criteria andMarkIsNotNull() {
            addCriterion("mark is not null");
            return (Criteria) this;
        }

        public Criteria andMarkEqualTo(String value) {
            addCriterion("mark =", value, "mark");
            return (Criteria) this;
        }

        public Criteria andMarkNotEqualTo(String value) {
            addCriterion("mark <>", value, "mark");
            return (Criteria) this;
        }

        public Criteria andMarkGreaterThan(String value) {
            addCriterion("mark >", value, "mark");
            return (Criteria) this;
        }

        public Criteria andMarkGreaterThanOrEqualTo(String value) {
            addCriterion("mark >=", value, "mark");
            return (Criteria) this;
        }

        public Criteria andMarkLessThan(String value) {
            addCriterion("mark <", value, "mark");
            return (Criteria) this;
        }

        public Criteria andMarkLessThanOrEqualTo(String value) {
            addCriterion("mark <=", value, "mark");
            return (Criteria) this;
        }

        public Criteria andMarkLike(String value) {
            addCriterion("mark like", value, "mark");
            return (Criteria) this;
        }

        public Criteria andMarkNotLike(String value) {
            addCriterion("mark not like", value, "mark");
            return (Criteria) this;
        }

        public Criteria andMarkIn(List<String> values) {
            addCriterion("mark in", values, "mark");
            return (Criteria) this;
        }

        public Criteria andMarkNotIn(List<String> values) {
            addCriterion("mark not in", values, "mark");
            return (Criteria) this;
        }

        public Criteria andMarkBetween(String value1, String value2) {
            addCriterion("mark between", value1, value2, "mark");
            return (Criteria) this;
        }

        public Criteria andMarkNotBetween(String value1, String value2) {
            addCriterion("mark not between", value1, value2, "mark");
            return (Criteria) this;
        }

        public Criteria andPictureIsNull() {
            addCriterion("picture is null");
            return (Criteria) this;
        }

        public Criteria andPictureIsNotNull() {
            addCriterion("picture is not null");
            return (Criteria) this;
        }

        public Criteria andPictureEqualTo(String value) {
            addCriterion("picture =", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotEqualTo(String value) {
            addCriterion("picture <>", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureGreaterThan(String value) {
            addCriterion("picture >", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureGreaterThanOrEqualTo(String value) {
            addCriterion("picture >=", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureLessThan(String value) {
            addCriterion("picture <", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureLessThanOrEqualTo(String value) {
            addCriterion("picture <=", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureLike(String value) {
            addCriterion("picture like", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotLike(String value) {
            addCriterion("picture not like", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureIn(List<String> values) {
            addCriterion("picture in", values, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotIn(List<String> values) {
            addCriterion("picture not in", values, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureBetween(String value1, String value2) {
            addCriterion("picture between", value1, value2, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotBetween(String value1, String value2) {
            addCriterion("picture not between", value1, value2, "picture");
            return (Criteria) this;
        }

        public Criteria andTitleZhIsNull() {
            addCriterion("title_zh is null");
            return (Criteria) this;
        }

        public Criteria andTitleZhIsNotNull() {
            addCriterion("title_zh is not null");
            return (Criteria) this;
        }

        public Criteria andTitleZhEqualTo(String value) {
            addCriterion("title_zh =", value, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleZhNotEqualTo(String value) {
            addCriterion("title_zh <>", value, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleZhGreaterThan(String value) {
            addCriterion("title_zh >", value, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleZhGreaterThanOrEqualTo(String value) {
            addCriterion("title_zh >=", value, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleZhLessThan(String value) {
            addCriterion("title_zh <", value, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleZhLessThanOrEqualTo(String value) {
            addCriterion("title_zh <=", value, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleZhLike(String value) {
            addCriterion("title_zh like", value, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleZhNotLike(String value) {
            addCriterion("title_zh not like", value, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleZhIn(List<String> values) {
            addCriterion("title_zh in", values, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleZhNotIn(List<String> values) {
            addCriterion("title_zh not in", values, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleZhBetween(String value1, String value2) {
            addCriterion("title_zh between", value1, value2, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleZhNotBetween(String value1, String value2) {
            addCriterion("title_zh not between", value1, value2, "titleZh");
            return (Criteria) this;
        }

        public Criteria andTitleEnIsNull() {
            addCriterion("title_en is null");
            return (Criteria) this;
        }

        public Criteria andTitleEnIsNotNull() {
            addCriterion("title_en is not null");
            return (Criteria) this;
        }

        public Criteria andTitleEnEqualTo(String value) {
            addCriterion("title_en =", value, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleEnNotEqualTo(String value) {
            addCriterion("title_en <>", value, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleEnGreaterThan(String value) {
            addCriterion("title_en >", value, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleEnGreaterThanOrEqualTo(String value) {
            addCriterion("title_en >=", value, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleEnLessThan(String value) {
            addCriterion("title_en <", value, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleEnLessThanOrEqualTo(String value) {
            addCriterion("title_en <=", value, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleEnLike(String value) {
            addCriterion("title_en like", value, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleEnNotLike(String value) {
            addCriterion("title_en not like", value, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleEnIn(List<String> values) {
            addCriterion("title_en in", values, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleEnNotIn(List<String> values) {
            addCriterion("title_en not in", values, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleEnBetween(String value1, String value2) {
            addCriterion("title_en between", value1, value2, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleEnNotBetween(String value1, String value2) {
            addCriterion("title_en not between", value1, value2, "titleEn");
            return (Criteria) this;
        }

        public Criteria andTitleFrIsNull() {
            addCriterion("title_fr is null");
            return (Criteria) this;
        }

        public Criteria andTitleFrIsNotNull() {
            addCriterion("title_fr is not null");
            return (Criteria) this;
        }

        public Criteria andTitleFrEqualTo(String value) {
            addCriterion("title_fr =", value, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleFrNotEqualTo(String value) {
            addCriterion("title_fr <>", value, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleFrGreaterThan(String value) {
            addCriterion("title_fr >", value, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleFrGreaterThanOrEqualTo(String value) {
            addCriterion("title_fr >=", value, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleFrLessThan(String value) {
            addCriterion("title_fr <", value, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleFrLessThanOrEqualTo(String value) {
            addCriterion("title_fr <=", value, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleFrLike(String value) {
            addCriterion("title_fr like", value, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleFrNotLike(String value) {
            addCriterion("title_fr not like", value, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleFrIn(List<String> values) {
            addCriterion("title_fr in", values, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleFrNotIn(List<String> values) {
            addCriterion("title_fr not in", values, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleFrBetween(String value1, String value2) {
            addCriterion("title_fr between", value1, value2, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleFrNotBetween(String value1, String value2) {
            addCriterion("title_fr not between", value1, value2, "titleFr");
            return (Criteria) this;
        }

        public Criteria andTitleDeIsNull() {
            addCriterion("title_de is null");
            return (Criteria) this;
        }

        public Criteria andTitleDeIsNotNull() {
            addCriterion("title_de is not null");
            return (Criteria) this;
        }

        public Criteria andTitleDeEqualTo(String value) {
            addCriterion("title_de =", value, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleDeNotEqualTo(String value) {
            addCriterion("title_de <>", value, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleDeGreaterThan(String value) {
            addCriterion("title_de >", value, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleDeGreaterThanOrEqualTo(String value) {
            addCriterion("title_de >=", value, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleDeLessThan(String value) {
            addCriterion("title_de <", value, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleDeLessThanOrEqualTo(String value) {
            addCriterion("title_de <=", value, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleDeLike(String value) {
            addCriterion("title_de like", value, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleDeNotLike(String value) {
            addCriterion("title_de not like", value, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleDeIn(List<String> values) {
            addCriterion("title_de in", values, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleDeNotIn(List<String> values) {
            addCriterion("title_de not in", values, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleDeBetween(String value1, String value2) {
            addCriterion("title_de between", value1, value2, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleDeNotBetween(String value1, String value2) {
            addCriterion("title_de not between", value1, value2, "titleDe");
            return (Criteria) this;
        }

        public Criteria andTitleEsIsNull() {
            addCriterion("title_es is null");
            return (Criteria) this;
        }

        public Criteria andTitleEsIsNotNull() {
            addCriterion("title_es is not null");
            return (Criteria) this;
        }

        public Criteria andTitleEsEqualTo(String value) {
            addCriterion("title_es =", value, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleEsNotEqualTo(String value) {
            addCriterion("title_es <>", value, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleEsGreaterThan(String value) {
            addCriterion("title_es >", value, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleEsGreaterThanOrEqualTo(String value) {
            addCriterion("title_es >=", value, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleEsLessThan(String value) {
            addCriterion("title_es <", value, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleEsLessThanOrEqualTo(String value) {
            addCriterion("title_es <=", value, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleEsLike(String value) {
            addCriterion("title_es like", value, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleEsNotLike(String value) {
            addCriterion("title_es not like", value, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleEsIn(List<String> values) {
            addCriterion("title_es in", values, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleEsNotIn(List<String> values) {
            addCriterion("title_es not in", values, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleEsBetween(String value1, String value2) {
            addCriterion("title_es between", value1, value2, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleEsNotBetween(String value1, String value2) {
            addCriterion("title_es not between", value1, value2, "titleEs");
            return (Criteria) this;
        }

        public Criteria andTitleJaIsNull() {
            addCriterion("title_ja is null");
            return (Criteria) this;
        }

        public Criteria andTitleJaIsNotNull() {
            addCriterion("title_ja is not null");
            return (Criteria) this;
        }

        public Criteria andTitleJaEqualTo(String value) {
            addCriterion("title_ja =", value, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitleJaNotEqualTo(String value) {
            addCriterion("title_ja <>", value, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitleJaGreaterThan(String value) {
            addCriterion("title_ja >", value, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitleJaGreaterThanOrEqualTo(String value) {
            addCriterion("title_ja >=", value, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitleJaLessThan(String value) {
            addCriterion("title_ja <", value, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitleJaLessThanOrEqualTo(String value) {
            addCriterion("title_ja <=", value, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitleJaLike(String value) {
            addCriterion("title_ja like", value, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitleJaNotLike(String value) {
            addCriterion("title_ja not like", value, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitleJaIn(List<String> values) {
            addCriterion("title_ja in", values, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitleJaNotIn(List<String> values) {
            addCriterion("title_ja not in", values, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitleJaBetween(String value1, String value2) {
            addCriterion("title_ja between", value1, value2, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitleJaNotBetween(String value1, String value2) {
            addCriterion("title_ja not between", value1, value2, "titleJa");
            return (Criteria) this;
        }

        public Criteria andTitlePtIsNull() {
            addCriterion("title_pt is null");
            return (Criteria) this;
        }

        public Criteria andTitlePtIsNotNull() {
            addCriterion("title_pt is not null");
            return (Criteria) this;
        }

        public Criteria andTitlePtEqualTo(String value) {
            addCriterion("title_pt =", value, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitlePtNotEqualTo(String value) {
            addCriterion("title_pt <>", value, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitlePtGreaterThan(String value) {
            addCriterion("title_pt >", value, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitlePtGreaterThanOrEqualTo(String value) {
            addCriterion("title_pt >=", value, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitlePtLessThan(String value) {
            addCriterion("title_pt <", value, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitlePtLessThanOrEqualTo(String value) {
            addCriterion("title_pt <=", value, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitlePtLike(String value) {
            addCriterion("title_pt like", value, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitlePtNotLike(String value) {
            addCriterion("title_pt not like", value, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitlePtIn(List<String> values) {
            addCriterion("title_pt in", values, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitlePtNotIn(List<String> values) {
            addCriterion("title_pt not in", values, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitlePtBetween(String value1, String value2) {
            addCriterion("title_pt between", value1, value2, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitlePtNotBetween(String value1, String value2) {
            addCriterion("title_pt not between", value1, value2, "titlePt");
            return (Criteria) this;
        }

        public Criteria andTitleItIsNull() {
            addCriterion("title_it is null");
            return (Criteria) this;
        }

        public Criteria andTitleItIsNotNull() {
            addCriterion("title_it is not null");
            return (Criteria) this;
        }

        public Criteria andTitleItEqualTo(String value) {
            addCriterion("title_it =", value, "titleIt");
            return (Criteria) this;
        }

        public Criteria andTitleItNotEqualTo(String value) {
            addCriterion("title_it <>", value, "titleIt");
            return (Criteria) this;
        }

        public Criteria andTitleItGreaterThan(String value) {
            addCriterion("title_it >", value, "titleIt");
            return (Criteria) this;
        }

        public Criteria andTitleItGreaterThanOrEqualTo(String value) {
            addCriterion("title_it >=", value, "titleIt");
            return (Criteria) this;
        }

        public Criteria andTitleItLessThan(String value) {
            addCriterion("title_it <", value, "titleIt");
            return (Criteria) this;
        }

        public Criteria andTitleItLessThanOrEqualTo(String value) {
            addCriterion("title_it <=", value, "titleIt");
            return (Criteria) this;
        }

        public Criteria andTitleItLike(String value) {
            addCriterion("title_it like", value, "titleIt");
            return (Criteria) this;
        }

        public Criteria andTitleItNotLike(String value) {
            addCriterion("title_it not like", value, "titleIt");
            return (Criteria) this;
        }

        public Criteria andTitleItIn(List<String> values) {
            addCriterion("title_it in", values, "titleIt");
            return (Criteria) this;
        }

        public Criteria andTitleItNotIn(List<String> values) {
            addCriterion("title_it not in", values, "titleIt");
            return (Criteria) this;
        }

        public Criteria andTitleItBetween(String value1, String value2) {
            addCriterion("title_it between", value1, value2, "titleIt");
            return (Criteria) this;
        }

        public Criteria andTitleItNotBetween(String value1, String value2) {
            addCriterion("title_it not between", value1, value2, "titleIt");
            return (Criteria) this;
        }

        public Criteria andKeywordZhIsNull() {
            addCriterion("keyword_zh is null");
            return (Criteria) this;
        }

        public Criteria andKeywordZhIsNotNull() {
            addCriterion("keyword_zh is not null");
            return (Criteria) this;
        }

        public Criteria andKeywordZhEqualTo(String value) {
            addCriterion("keyword_zh =", value, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordZhNotEqualTo(String value) {
            addCriterion("keyword_zh <>", value, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordZhGreaterThan(String value) {
            addCriterion("keyword_zh >", value, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordZhGreaterThanOrEqualTo(String value) {
            addCriterion("keyword_zh >=", value, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordZhLessThan(String value) {
            addCriterion("keyword_zh <", value, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordZhLessThanOrEqualTo(String value) {
            addCriterion("keyword_zh <=", value, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordZhLike(String value) {
            addCriterion("keyword_zh like", value, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordZhNotLike(String value) {
            addCriterion("keyword_zh not like", value, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordZhIn(List<String> values) {
            addCriterion("keyword_zh in", values, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordZhNotIn(List<String> values) {
            addCriterion("keyword_zh not in", values, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordZhBetween(String value1, String value2) {
            addCriterion("keyword_zh between", value1, value2, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordZhNotBetween(String value1, String value2) {
            addCriterion("keyword_zh not between", value1, value2, "keywordZh");
            return (Criteria) this;
        }

        public Criteria andKeywordEnIsNull() {
            addCriterion("keyword_en is null");
            return (Criteria) this;
        }

        public Criteria andKeywordEnIsNotNull() {
            addCriterion("keyword_en is not null");
            return (Criteria) this;
        }

        public Criteria andKeywordEnEqualTo(String value) {
            addCriterion("keyword_en =", value, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordEnNotEqualTo(String value) {
            addCriterion("keyword_en <>", value, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordEnGreaterThan(String value) {
            addCriterion("keyword_en >", value, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordEnGreaterThanOrEqualTo(String value) {
            addCriterion("keyword_en >=", value, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordEnLessThan(String value) {
            addCriterion("keyword_en <", value, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordEnLessThanOrEqualTo(String value) {
            addCriterion("keyword_en <=", value, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordEnLike(String value) {
            addCriterion("keyword_en like", value, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordEnNotLike(String value) {
            addCriterion("keyword_en not like", value, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordEnIn(List<String> values) {
            addCriterion("keyword_en in", values, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordEnNotIn(List<String> values) {
            addCriterion("keyword_en not in", values, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordEnBetween(String value1, String value2) {
            addCriterion("keyword_en between", value1, value2, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordEnNotBetween(String value1, String value2) {
            addCriterion("keyword_en not between", value1, value2, "keywordEn");
            return (Criteria) this;
        }

        public Criteria andKeywordFrIsNull() {
            addCriterion("keyword_fr is null");
            return (Criteria) this;
        }

        public Criteria andKeywordFrIsNotNull() {
            addCriterion("keyword_fr is not null");
            return (Criteria) this;
        }

        public Criteria andKeywordFrEqualTo(String value) {
            addCriterion("keyword_fr =", value, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordFrNotEqualTo(String value) {
            addCriterion("keyword_fr <>", value, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordFrGreaterThan(String value) {
            addCriterion("keyword_fr >", value, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordFrGreaterThanOrEqualTo(String value) {
            addCriterion("keyword_fr >=", value, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordFrLessThan(String value) {
            addCriterion("keyword_fr <", value, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordFrLessThanOrEqualTo(String value) {
            addCriterion("keyword_fr <=", value, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordFrLike(String value) {
            addCriterion("keyword_fr like", value, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordFrNotLike(String value) {
            addCriterion("keyword_fr not like", value, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordFrIn(List<String> values) {
            addCriterion("keyword_fr in", values, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordFrNotIn(List<String> values) {
            addCriterion("keyword_fr not in", values, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordFrBetween(String value1, String value2) {
            addCriterion("keyword_fr between", value1, value2, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordFrNotBetween(String value1, String value2) {
            addCriterion("keyword_fr not between", value1, value2, "keywordFr");
            return (Criteria) this;
        }

        public Criteria andKeywordDeIsNull() {
            addCriterion("keyword_de is null");
            return (Criteria) this;
        }

        public Criteria andKeywordDeIsNotNull() {
            addCriterion("keyword_de is not null");
            return (Criteria) this;
        }

        public Criteria andKeywordDeEqualTo(String value) {
            addCriterion("keyword_de =", value, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordDeNotEqualTo(String value) {
            addCriterion("keyword_de <>", value, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordDeGreaterThan(String value) {
            addCriterion("keyword_de >", value, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordDeGreaterThanOrEqualTo(String value) {
            addCriterion("keyword_de >=", value, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordDeLessThan(String value) {
            addCriterion("keyword_de <", value, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordDeLessThanOrEqualTo(String value) {
            addCriterion("keyword_de <=", value, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordDeLike(String value) {
            addCriterion("keyword_de like", value, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordDeNotLike(String value) {
            addCriterion("keyword_de not like", value, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordDeIn(List<String> values) {
            addCriterion("keyword_de in", values, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordDeNotIn(List<String> values) {
            addCriterion("keyword_de not in", values, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordDeBetween(String value1, String value2) {
            addCriterion("keyword_de between", value1, value2, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordDeNotBetween(String value1, String value2) {
            addCriterion("keyword_de not between", value1, value2, "keywordDe");
            return (Criteria) this;
        }

        public Criteria andKeywordEsIsNull() {
            addCriterion("keyword_es is null");
            return (Criteria) this;
        }

        public Criteria andKeywordEsIsNotNull() {
            addCriterion("keyword_es is not null");
            return (Criteria) this;
        }

        public Criteria andKeywordEsEqualTo(String value) {
            addCriterion("keyword_es =", value, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordEsNotEqualTo(String value) {
            addCriterion("keyword_es <>", value, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordEsGreaterThan(String value) {
            addCriterion("keyword_es >", value, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordEsGreaterThanOrEqualTo(String value) {
            addCriterion("keyword_es >=", value, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordEsLessThan(String value) {
            addCriterion("keyword_es <", value, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordEsLessThanOrEqualTo(String value) {
            addCriterion("keyword_es <=", value, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordEsLike(String value) {
            addCriterion("keyword_es like", value, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordEsNotLike(String value) {
            addCriterion("keyword_es not like", value, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordEsIn(List<String> values) {
            addCriterion("keyword_es in", values, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordEsNotIn(List<String> values) {
            addCriterion("keyword_es not in", values, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordEsBetween(String value1, String value2) {
            addCriterion("keyword_es between", value1, value2, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordEsNotBetween(String value1, String value2) {
            addCriterion("keyword_es not between", value1, value2, "keywordEs");
            return (Criteria) this;
        }

        public Criteria andKeywordJaIsNull() {
            addCriterion("keyword_ja is null");
            return (Criteria) this;
        }

        public Criteria andKeywordJaIsNotNull() {
            addCriterion("keyword_ja is not null");
            return (Criteria) this;
        }

        public Criteria andKeywordJaEqualTo(String value) {
            addCriterion("keyword_ja =", value, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordJaNotEqualTo(String value) {
            addCriterion("keyword_ja <>", value, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordJaGreaterThan(String value) {
            addCriterion("keyword_ja >", value, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordJaGreaterThanOrEqualTo(String value) {
            addCriterion("keyword_ja >=", value, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordJaLessThan(String value) {
            addCriterion("keyword_ja <", value, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordJaLessThanOrEqualTo(String value) {
            addCriterion("keyword_ja <=", value, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordJaLike(String value) {
            addCriterion("keyword_ja like", value, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordJaNotLike(String value) {
            addCriterion("keyword_ja not like", value, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordJaIn(List<String> values) {
            addCriterion("keyword_ja in", values, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordJaNotIn(List<String> values) {
            addCriterion("keyword_ja not in", values, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordJaBetween(String value1, String value2) {
            addCriterion("keyword_ja between", value1, value2, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordJaNotBetween(String value1, String value2) {
            addCriterion("keyword_ja not between", value1, value2, "keywordJa");
            return (Criteria) this;
        }

        public Criteria andKeywordPtIsNull() {
            addCriterion("keyword_pt is null");
            return (Criteria) this;
        }

        public Criteria andKeywordPtIsNotNull() {
            addCriterion("keyword_pt is not null");
            return (Criteria) this;
        }

        public Criteria andKeywordPtEqualTo(String value) {
            addCriterion("keyword_pt =", value, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordPtNotEqualTo(String value) {
            addCriterion("keyword_pt <>", value, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordPtGreaterThan(String value) {
            addCriterion("keyword_pt >", value, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordPtGreaterThanOrEqualTo(String value) {
            addCriterion("keyword_pt >=", value, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordPtLessThan(String value) {
            addCriterion("keyword_pt <", value, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordPtLessThanOrEqualTo(String value) {
            addCriterion("keyword_pt <=", value, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordPtLike(String value) {
            addCriterion("keyword_pt like", value, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordPtNotLike(String value) {
            addCriterion("keyword_pt not like", value, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordPtIn(List<String> values) {
            addCriterion("keyword_pt in", values, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordPtNotIn(List<String> values) {
            addCriterion("keyword_pt not in", values, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordPtBetween(String value1, String value2) {
            addCriterion("keyword_pt between", value1, value2, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordPtNotBetween(String value1, String value2) {
            addCriterion("keyword_pt not between", value1, value2, "keywordPt");
            return (Criteria) this;
        }

        public Criteria andKeywordItIsNull() {
            addCriterion("keyword_it is null");
            return (Criteria) this;
        }

        public Criteria andKeywordItIsNotNull() {
            addCriterion("keyword_it is not null");
            return (Criteria) this;
        }

        public Criteria andKeywordItEqualTo(String value) {
            addCriterion("keyword_it =", value, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andKeywordItNotEqualTo(String value) {
            addCriterion("keyword_it <>", value, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andKeywordItGreaterThan(String value) {
            addCriterion("keyword_it >", value, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andKeywordItGreaterThanOrEqualTo(String value) {
            addCriterion("keyword_it >=", value, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andKeywordItLessThan(String value) {
            addCriterion("keyword_it <", value, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andKeywordItLessThanOrEqualTo(String value) {
            addCriterion("keyword_it <=", value, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andKeywordItLike(String value) {
            addCriterion("keyword_it like", value, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andKeywordItNotLike(String value) {
            addCriterion("keyword_it not like", value, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andKeywordItIn(List<String> values) {
            addCriterion("keyword_it in", values, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andKeywordItNotIn(List<String> values) {
            addCriterion("keyword_it not in", values, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andKeywordItBetween(String value1, String value2) {
            addCriterion("keyword_it between", value1, value2, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andKeywordItNotBetween(String value1, String value2) {
            addCriterion("keyword_it not between", value1, value2, "keywordIt");
            return (Criteria) this;
        }

        public Criteria andCtimeIsNull() {
            addCriterion("ctime is null");
            return (Criteria) this;
        }

        public Criteria andCtimeIsNotNull() {
            addCriterion("ctime is not null");
            return (Criteria) this;
        }

        public Criteria andCtimeEqualTo(Long value) {
            addCriterion("ctime =", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeNotEqualTo(Long value) {
            addCriterion("ctime <>", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeGreaterThan(Long value) {
            addCriterion("ctime >", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeGreaterThanOrEqualTo(Long value) {
            addCriterion("ctime >=", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeLessThan(Long value) {
            addCriterion("ctime <", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeLessThanOrEqualTo(Long value) {
            addCriterion("ctime <=", value, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeIn(List<Long> values) {
            addCriterion("ctime in", values, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeNotIn(List<Long> values) {
            addCriterion("ctime not in", values, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeBetween(Long value1, Long value2) {
            addCriterion("ctime between", value1, value2, "ctime");
            return (Criteria) this;
        }

        public Criteria andCtimeNotBetween(Long value1, Long value2) {
            addCriterion("ctime not between", value1, value2, "ctime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria implements Serializable {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion implements Serializable {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}